package com.ylr.basic.framework.entity;

import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;

import java.io.Serializable;
import java.util.Date;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;
import lombok.experimental.Accessors;

/**
 * Created by IntelliJ IDEA.
 *
 * @author wyw
 * date: 2023-04-28 22:24:10
 * className: RequestLogEntity 请求日志表实体类
 * version: 1.0
 * description:
 * 	请求日志表
 */
@Getter
@Setter
@ToString
@Accessors(chain = true)
@TableName("yb_request_log")
public class RequestLogEntity implements Serializable {
	private static final long serialVersionUID = 1L;

	/**
	 * 日志id
	 */
	@TableId
	private Long id;
	/**
	 * 用户主键
	 */
	private Long userId;
	/**
	 * 用户名称
	 */
	private String username;
	/**
	 * 请求指纹
	 */
	private String fingerprint;
	/**
	 * 请求源ip
	 */
	private String requestIp;
	/**
	 * 请求源现实地址
	 */
	private String address;
	/**
	 * 所属模块
	 */
	private Integer module;
	/**
	 * 所属渠道
	 */
	private Integer channel;
	/**
	 * 请求设备
	 */
	private String device;
	/**
	 * 请求操作系统
	 */
	private String os;
	/**
	 * 请求接口路径
	 */
	private String uri;
	/**
	 * 请求方法类型[get、post、put、delete]
	 */
	private String type;
	/**
	 * 请求接口类
	 */
	private String className;
	/**
	 * 请求接口方法
	 */
	private String method;
	/**
	 * 请求链路追踪值
	 */
	private String requestId;
	/**
	 * 返回状态码
	 */
	private Integer code;
	/**
	 * 接口返回消息
	 */
	private String message;
	/**
	 * 收到请求时间（时间戳）
	 */
	private Long startTime;
	/**
	 * 结果返回时间（时间戳）
	 */
	private Long endTime;
	/**
	 * 创建时间
	 */
	private Date createTime;

}
